package com.smart.manage.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.smart.common.annotation.Excel;
import com.smart.common.core.domain.BaseEntity;

/**
 * 药品入库信息对象 tb_drug_incoming
 * 
 * @author lingyao
 * @date 2025-03-05
 */
public class DrugIncoming extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 入库记录ID */
    @Excel(name = "入库记录ID")
    private Long incomingId;

    /** 药品名称 */
    @Excel(name = "药品名称")
    private String drugName;

    /** 药品规格 */
    @Excel(name = "药品规格")
    private String drugSpecification;

    /** 入库操作人ID */
    @Excel(name = "入库操作人ID")
    private Long operatorId;

    /** 入库数量 */
    @Excel(name = "入库数量")
    private Long quantity;

    /** 入库日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入库日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date incomingDate;

    /** 供应商ID */
    @Excel(name = "供应商ID")
    private Long supplierId;

    /** 入库价格 */
    @Excel(name = "入库价格")
    private BigDecimal price;

    public void setIncomingId(Long incomingId) 
    {
        this.incomingId = incomingId;
    }

    public Long getIncomingId() 
    {
        return incomingId;
    }
    public void setDrugName(String drugName) 
    {
        this.drugName = drugName;
    }

    public String getDrugName() 
    {
        return drugName;
    }
    public void setDrugSpecification(String drugSpecification) 
    {
        this.drugSpecification = drugSpecification;
    }

    public Long getOperatorId() {
        return operatorId;
    }

    public void setOperatorId(Long operatorId) {
        this.operatorId = operatorId;
    }

    public String getDrugSpecification()
    {
        return drugSpecification;
    }
    public void setQuantity(Long quantity) 
    {
        this.quantity = quantity;
    }

    public Long getQuantity() 
    {
        return quantity;
    }
    public void setIncomingDate(Date incomingDate) 
    {
        this.incomingDate = incomingDate;
    }

    public Date getIncomingDate() 
    {
        return incomingDate;
    }
    public void setSupplierId(Long supplierId) 
    {
        this.supplierId = supplierId;
    }

    public Long getSupplierId() 
    {
        return supplierId;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("incomingId", getIncomingId())
            .append("drugName", getDrugName())
            .append("drugSpecification", getDrugSpecification())
            .append("operatorId", getOperatorId())
            .append("quantity", getQuantity())
            .append("incomingDate", getIncomingDate())
            .append("supplierId", getSupplierId())
            .append("price", getPrice())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
